As is known, wireless communication systems include a plurality of wireless communication devices that communicate via an assigned radio frequency (RF) channel or channels, which may be done directly (i.e., point-to-point) or indirectly (i.e., via the wireless communication system infrastructure). For point-to-point wireless communications, wireless communication devices communicate directly via an RF channel, which is selected by one of the wireless communication devices from a list of RF channels allocated for point-to-point communications. For indirect wireless communications, the wireless communication devices communicate via the system's infrastructure, which includes base stations (e.g., for cellular wireless communication systems, dispatched based wireless communication systems, et cetera) and/or access points (for wireless local area networks).
As is known, a base station or access point receives a request from a wireless communication device within its coverage area to establish a communication with another wireless communication device. Upon receiving the request, the base station or access point determines whether the targeted wireless communication device is within its coverage area. If so, the base station or access point provides an RF channel for the wireless communication devices to use for their communication. If, however, the targeted wireless communication device is not within the coverage area of the base station or access point, the base station or access point forwards the request to a wireless communication system controller. The wireless communication system controller determines the particular base station or access point that the targeted wireless communication device is affiliated with. The identified base station or access point allocates an RF channel for the targeted wireless communication device and, via a communication path established by the controller between the base stations or access points, the wireless communication devices are able to communicate.
As is known, a wireless communication device may be a cellular telephone, mobile radio, personal digital assistant with a wireless modem, personal computer with a wireless modem, local area network server with a wireless modem, computer with a wireless modem, interactive television, interactive home entertainment equipment, et cetera. As is also known, the content of the communication may be voice data, text data, and/or video data. Multimedia communications typically include all three, with video and audio comprising a majority of the communication.
FIG. 1 illustrates a wireless communication of multimedia data between wireless communication devices. In this illustration, a video transmitter is transmitting packets of encoded video data to a video receiver. The video transmitter includes a video encoder, buffer, baseband processor, and an RF transceiver. The baseband processor performs a media-specific access control protocol (MAC) in accordance with an IEEE 802 specification and the RF transceiver performs physical layer (PHY) functions in accordance with the IEEE 802 specification.
The video encoder encodes raw video and/or audio data based on a corresponding encoding function. For example, the encoding may be done in accordance with motion picture expert group (MPEG) standards. The resulting encoded data is stored in the buffer. The encoded data is retrieved from the buffer and processed via the baseband processor and transmitted by the RF transceiver as packets of data to the video receiver via a wireless communication channel. The video receiver includes an RF transceiver, baseband processor, buffer and a video decoder. The RF transceiver and baseband processor perform the inverse functions of the corresponding devices in the video transmitter. The retrieved data is stored in the buffer and eventually decoded via the video decoder to recapture the raw data.
As mentioned, the encoded data is transmitted by the video transmitter in packets of data via a wireless communication channel. For each packet of data that is successfully received by the RF transceiver of the video receiver, an acknowledgment is transmitted back to the RF transceiver of the video transmitter. If an acknowledgement is not received within a given time frame, the baseband processor (MAC layer) retransmits the packet of data and will continue the retransmission until an acknowledgment is received or the channel is dropped. Typically, if the video receiver does not provide an acknowledgment it was because the receiver was unable to accurately recapture the data contained in the packet, which is commonly referred to as packet error.
The quality of the wireless communication channel on which the packet was received greatly affects the receiver's ability to accurately recapture the data. As is known, if the quality of the wireless communication channel between the video transmitter and video receiver is high (i.e., received signals have good signal to noise ratio), the video receiver is able to accurate recapture data from most, if not all, of the packets it receives. As the quality of the RF channel decreases, the signal to noise ratio decreases, as does the receiver's ability to recapture data from the received packets, as such the packet error rate increases.
As the packet error rate increases, the baseband processor (MAC layer) is retransmitting more and more packets, which means the baseband processor is retrieving less encoded data from the buffer. As a result, the volume of data stored in the buffer increases. If the volume of data consumes the buffer's capacity, the buffer saturates (i.e., overflows), which causes data to be lost and distortion in the resulting transmitted video. Conversely, if the packet error rate is very low, the baseband processor increases the amount of data retrieved from the buffer. If the buffer empties (i.e., underflows), video transmission is interrupted and quality is compromised.
To avoid overflow or underflow, the targeted fill rate of the buffer is to keep the buffer about 50% full. If the buffer fill increases by a predetermined amount (e.g., 10-25% above 50%), the video encoder changes its encoding rate to reduce the amount of data placed in the buffer. Conversely, if the data fill rate decreases by 10-25% from 50%, the video encoder will increase the data rate of information placed in the buffer.
Accordingly, the buffer must be sized in the video transmitter to prevent the overflow or underflow condition. Since the packet error rate detection may take hundreds or even thousands of packets to alter the fill of the buffer, the size of the buffer is large. Having a large memory device in an integrated circuit increases the size of the integrated circuit, increases power consumption of the integrated circuit, and thus increases the cost of the integrated circuit.
Therefore, a need exists for a method and apparatus for a dynamically adjusting data rate of wireless communications thus allowing a reduction in the amount of data buffering needed to maintain an acceptable rate of data transference.